home *** CD-ROM | disk | FTP | other *** search
/ Amiga Collections: Franz PD / Franz PD Disk #221 (1993)(Rhein-Sieg-Soft).zip / Franz PD Disk #221 (1993)(Rhein-Sieg-Soft).adf / DiscCatalogue / DC.AMOS / DC.amosSourceCode < prev    next >
AMOS Source Code  |  1993-02-15  |  15KB  |  536 lines

  1. '----------------------------------------------
  2. '*                                            *  
  3. '*               "  DiscCatalogue "           *    
  4. '*                                            *    
  5. '*                                            *
  6. '*                      von                   *      
  7. '*                                            *  
  8. '*                 Michael Reiche             *  
  9. '*                                            *    
  10. '*                                            *
  11. '----------------------------------------------  
  12. '
  13. Screen Open 0,640,256,8,Hires : Cls 0
  14. Global FILE$,DSL,DSE,DS,J,N
  15. Global DNR$,DNAME$,PNAME$,GTDAS$,GENRE$,BEM$,SB$
  16. N=0 : J=1
  17. SCR
  18. OP_DAT
  19. Procedure SCR
  20.    Hide 
  21.    Unpack 10 To 0 : Erase 10
  22.    Limit Mouse 128,42 To 447,297
  23.    Reserve Zone 21
  24.    Set Zone 1,16,32 To 105,48
  25.    Set Zone 2,16,59 To 105,75
  26.    Set Zone 3,124,32 To 213,48
  27.    Set Zone 4,124,59 To 213,75
  28.    Set Zone 5,232,32 To 321,48
  29.    Set Zone 6,232,59 To 321,75
  30.    Set Zone 7,340,31 To 366,45
  31.    Set Zone 8,385,31 To 411,45
  32.    Set Zone 9,340,66 To 366,80
  33.    Set Zone 10,385,66 To 411,80
  34.    Set Zone 11,431,32 To 520,48
  35.    Set Zone 12,431,59 To 520,75
  36.    Set Zone 13,539,32 To 628,48
  37.    Set Zone 14,539,59 To 628,75
  38.    Set Zone 15,159,134 To 217,146
  39.    Set Zone 16,159,150 To 337,162
  40.    Set Zone 17,159,166 To 416,178
  41.    Set Zone 18,159,182 To 218,194
  42.    Set Zone 19,159,198 To 376,210
  43.    Set Zone 20,159,214 To 416,226
  44.    Set Zone 21,159,230 To 233,242
  45.    GADG_NEU
  46.    Show 
  47. End Proc
  48. Procedure OP_DAT
  49.    Repeat 
  50.       FILE$=Fsel$("*.DC","","Bitte Katalog laden,","Suffix .DC beachten")
  51.    Until FILE$<>""
  52.    Open Random 1,FILE$
  53.    Field 1,5 As DNR$,20 As DNAME$,30 As PNAME$,5 As GTDAS$,25 As GENRE$,30 As BEM$,7 As SB$
  54.    DSL=5+20+30+5+25+30+7
  55.    DSE=Lof(1)/DSL
  56.    DS=1
  57.    If DSE<>0
  58.       Get 1,DS
  59.    Else 
  60.       DSE=1
  61.    End If 
  62.    DS_NEU
  63. End Proc
  64. Do 
  65.    Multi Wait 
  66.    Screen 0
  67.    Paper 6 : Pen 1 : Print At(3,13);"Freier Speicher: ";Chip Free+Fast Free;" Bytes"
  68.    Repeat 
  69.       Wait Vbl 
  70.       M=Mouse Zone : Curs Pen 7
  71.       If Mouse Key=1
  72.          If M=15 : Print At(21,17);String$(" ",5) : DNR$="" : DNR_IN : End If 
  73.          If M=16 : Print At(21,19);String$(" ",20) : DNAME$="" : DNAME_IN : End If 
  74.          If M=17 : Print At(21,21);String$(" ",30) : PNAME$="" : PNAME_IN : End If 
  75.          If M=18 : Print At(21,23);String$(" ",5) : GTDAS$="" : GTDAS_IN : End If 
  76.          If M=19 : Print At(21,25);String$(" ",25) : GENRE$="" : GENRE_IN : End If 
  77.          If M=20 : Print At(21,27);String$(" ",30) : BEM$="" : BEM_IN : End If 
  78.          If M=21 : Print At(21,29);String$(" ",7) : SB$="" : SB_IN : End If 
  79.          Curs Off 
  80.          If M<>0 and M<15
  81.             CL_GADG[M]
  82.             On M Proc HILFE,LADEN,SRT,NEU_DS,SUCHEN,SICHERN,_NEXT,LAST,PREV,FIRST,DRUCK,STAT,INFO,_ENDE
  83.             DS_NEU
  84.          End If 
  85.       End If 
  86.    Until Mouse Key
  87. Loop 
  88. Procedure CL_GADG[M]
  89.    If M<>0 and Mouse Key=1
  90.       If M=1 : Paste Bob 16,31,15 : End If 
  91.       If M=2 : Paste Bob 16,58,16 : End If 
  92.       If M=3 : Paste Bob 124,31,17 : End If 
  93.       If M=4 : Paste Bob 124,58,18 : End If 
  94.       If M=5 : Paste Bob 232,31,19 : End If 
  95.       If M=6 : Paste Bob 232,58,20 : End If 
  96.       If M=7 : Paste Bob 340,30,21 : End If 
  97.       If M=8 : Paste Bob 385,30,22 : End If 
  98.       If M=9 : Paste Bob 340,65,23 : End If 
  99.       If M=10 : Paste Bob 385,65,24 : End If 
  100.       If M=11 : Paste Bob 431,31,25 : End If 
  101.       If M=12 : Paste Bob 431,58,26 : End If 
  102.       If M=13 : Paste Bob 539,31,27 : End If 
  103.       If M=14 : Paste Bob 539,58,28 : End If 
  104.    End If 
  105.    Repeat 
  106.       Wait Vbl 
  107.    Until Mouse Key=0
  108.    GADG_NEU
  109. End Proc
  110. Procedure DS_NEU
  111.    Paper 6 : Pen 1 : Print At(2,11);String$(" ",76) : Print At(2,13);String$(" ",50)
  112.    Paper 6 : Pen 1 : Print At(3,13);"Freier Speicher: ";Chip Free+Fast Free;" Bytes"
  113.    Pen 2
  114.    Print At(2,11);"Datei"
  115.    Pen 1
  116.    Print At(11,11);Right$(FILE$,35)
  117.    Print At(52,11);"Datensatz-Nr.";DS
  118.    Print At(21,17);Right$(DNR$,5)
  119.    Print At(21,19);Right$(DNAME$,20)
  120.    Print At(21,21);Right$(PNAME$,30)
  121.    Print At(21,23);Right$(GTDAS$,5)
  122.    Print At(21,25);Right$(GENRE$,25)
  123.    Print At(21,27);Right$(BEM$,30)
  124.    Print At(21,29);Right$(SB$,7)
  125. End Proc
  126. Procedure GADG_NEU
  127.    Paste Bob 16,31,1
  128.    Paste Bob 16,58,2
  129.    Paste Bob 124,31,3
  130.    Paste Bob 124,58,4
  131.    Paste Bob 232,31,5
  132.    Paste Bob 232,58,6
  133.    Paste Bob 340,30,7
  134.    Paste Bob 385,30,8
  135.    Paste Bob 340,65,9
  136.    Paste Bob 385,65,10
  137.    Paste Bob 431,31,11
  138.    Paste Bob 431,58,12
  139.    Paste Bob 539,31,13
  140.    Paste Bob 539,58,14
  141. End Proc
  142. Procedure SUCHEN
  143.    If DSE>1
  144.       Paper 6 : Pen 1 : Print At(2,11);String$(" ",76) : Print At(2,13);String$(" ",50)
  145.       Print At(2,11);"Was soll ich suchen ?"
  146.       Locate 24,11
  147.       Clear Key : Curs On 
  148.       Repeat 
  149.          K$=Inkey$
  150.          S=Scancode
  151.          If S=65 and Len(SUCH$)>0
  152.             SUCH$=Left$(SUCH$,Len(SUCH$)-1)
  153.             Locate X Curs-1, : Print " "; : Locate X Curs-1, : 
  154.          End If 
  155.          If(K$>=Chr$(32)) and(K$<=Chr$(255)) and(K$<>Chr$(44)) and Len(SUCH$)<>36
  156.             Print K$;
  157.             SUCH$=SUCH$+K$
  158.          End If 
  159.       Until S=68
  160.       SUCH$=Upper$(SUCH$)
  161.       Curs Off 
  162.       Change Mouse 3
  163.       VDS=DS
  164.       For DS=1 To DSE
  165.          Get 1,DS
  166.          F=N
  167.          If Instr(Upper$(DNR$),SUCH$) : F=J : End If 
  168.          If Instr(Upper$(DNAME$),SUCH$) : F=J : End If 
  169.          If Instr(Upper$(PNAME$),SUCH$) : F=J : End If 
  170.          If Instr(Upper$(GTDAS$),SUCH$) : F=J : End If 
  171.          If Instr(Upper$(GENRE$),SUCH$) : F=J : End If 
  172.          If Instr(Upper$(BEM$),SUCH$) : F=J : End If 
  173.          If Instr(Upper$(SB$),SUCH$) : F=J : End If 
  174.          If F
  175.             VDS=DS
  176.             DS_NEU
  177.             Paper 6 : Pen 1 : Print At(2,11);String$(" ",76) : Print At(2,13);String$(" ",50)
  178.             Print At(2,11);"Gefunden in Datensatz-Nr.";DS : Print At(33,11);" Weitersuchen?  Ja/Nein"
  179.             Print At(2,13);"linke Maustaste = Ja   rechte Maustaste = Nein"
  180.             Repeat 
  181.                MK=Mouse Key
  182.             Until MK=1 or MK=2
  183.             If MK=2 : Exit : End If 
  184.             DS_NEU
  185.          End If 
  186.       Next 
  187.       If F=N
  188.          Paper 6 : Pen 1 : Print At(2,11);String$(" ",76) : Print At(2,13);String$(" ",50)
  189.          Print At(3,11);"Nicht gefunden!     >> Taste <<"
  190.          Print At(2,13);String$(" ",50)
  191.          Wait Key 
  192.          DS=VDS
  193.          Get 1,DS
  194.       End If 
  195.       Change Mouse 1
  196.       DS_NEU
  197.       DS=VDS
  198.       Paper 6 : Pen 1 : Print At(2,11);String$(" ",76) : Print At(2,13);String$(" ",50)
  199.       Paper 6 : Pen 1 : Print At(3,13);"Freier Speicher: ";Chip Free+Fast Free;" Bytes"
  200.    End If 
  201. End Proc
  202. Procedure NEU_DS
  203.    Inc DSE
  204.    DS=DSE
  205.    DNR$="" : DNAME$="" : PNAME$="" : GTDAS$="" : GENRE$="" : BEM$="" : SB$=""
  206.    SICHERN
  207.    CLB
  208.    DS_NEU
  209. End Proc
  210. Procedure DNR_IN
  211.    Locate 21,17
  212.    Clear Key : Curs On 
  213.    Repeat 
  214.       K$=Inkey$
  215.       S=Scancode
  216.       If S=65 and Len(DNR$)>0
  217.          DNR$=Left$(DNR$,Len(DNR$)-1)
  218.          Locate X Curs-1, : Print " "; : Locate X Curs-1, : 
  219.       End If 
  220.       If(K$>=Chr$(32)) and(K$<=Chr$(255)) and(K$<>Chr$(44)) and Len(DNR$)<>5
  221.          Print K$;
  222.          DNR$=DNR$+K$
  223.       End If 
  224.    Until S=68
  225.    Curs Off 
  226.    DS_NEU
  227. End Proc
  228. Procedure DNAME_IN
  229.    Locate 21,19
  230.    Clear Key : Curs On 
  231.    Repeat 
  232.       K$=Inkey$
  233.       S=Scancode
  234.       If S=65 and Len(DNAME$)>0
  235.          DNAME$=Left$(DNAME$,Len(DNAME$)-1)
  236.          Locate X Curs-1, : Print " "; : Locate X Curs-1, : 
  237.       End If 
  238.       If(K$>=Chr$(32)) and(K$<=Chr$(255)) and(K$<>Chr$(44)) and Len(DNAME$)<>20
  239.          Print K$;
  240.          DNAME$=DNAME$+K$
  241.       End If 
  242.    Until S=68
  243.    Curs Off 
  244.    DS_NEU
  245. End Proc
  246. Procedure PNAME_IN
  247.    Locate 21,21
  248.    Clear Key : Curs On 
  249.    Repeat 
  250.       K$=Inkey$
  251.       S=Scancode
  252.       If S=65 and Len(PNAME$)>0
  253.          PNAME$=Left$(PNAME$,Len(PNAME$)-1)
  254.          Locate X Curs-1, : Print " "; : Locate X Curs-1, : 
  255.       End If 
  256.       If(K$>=Chr$(32)) and(K$<=Chr$(255)) and(K$<>Chr$(44)) and Len(PNAME$)<>30
  257.          Print K$;
  258.          PNAME$=PNAME$+K$
  259.       End If 
  260.    Until S=68
  261.    Curs Off 
  262.    DS_NEU
  263. End Proc
  264. Procedure GTDAS_IN
  265.    Locate 21,23
  266.    Clear Key : Curs On 
  267.    Repeat 
  268.       K$=Inkey$
  269.       S=Scancode
  270.       If S=65 and Len(GTDAS$)>0
  271.          GTDAS$=Left$(GTDAS$,Len(GTDAS$)-1)
  272.          Locate X Curs-1, : Print " "; : Locate X Curs-1, : 
  273.       End If 
  274.       If(K$>=Chr$(32)) and(K$<=Chr$(255)) and(K$<>Chr$(44)) and Len(GTDAS$)<>5
  275.          Print K$;
  276.          GTDAS$=GTDAS$+K$
  277.       End If 
  278.    Until S=68
  279.    Curs Off 
  280.    DS_NEU
  281. End Proc
  282. Procedure GENRE_IN
  283.    Locate 21,25
  284.    Clear Key : Curs On 
  285.    Repeat 
  286.       K$=Inkey$
  287.       S=Scancode
  288.       If S=65 and Len(GENRE$)>0
  289.          GENRE$=Left$(GENRE$,Len(GENRE$)-1)
  290.          Locate X Curs-1, : Print " "; : Locate X Curs-1, : 
  291.       End If 
  292.       If(K$>=Chr$(32)) and(K$<=Chr$(255)) and(K$<>Chr$(44)) and Len(GENRE$)<>25
  293.          Print K$;
  294.          GENRE$=GENRE$+K$
  295.       End If 
  296.    Until S=68
  297.    Curs Off 
  298.    DS_NEU
  299. End Proc
  300. Procedure BEM_IN
  301.    Locate 21,27
  302.    Clear Key : Curs On 
  303.    Repeat 
  304.       K$=Inkey$
  305.       S=Scancode
  306.       If S=65 and Len(BEM$)>0
  307.          BEM$=Left$(BEM$,Len(BEM$)-1)
  308.          Locate X Curs-1, : Print " "; : Locate X Curs-1, : 
  309.       End If 
  310.       If(K$>=Chr$(32)) and(K$<=Chr$(255)) and(K$<>Chr$(44)) and Len(BEM$)<>30
  311.          Print K$;
  312.          BEM$=BEM$+K$
  313.       End If 
  314.    Until S=68
  315.    Curs Off 
  316.    DS_NEU
  317. End Proc
  318. Procedure SB_IN
  319.    Locate 21,29
  320.    Clear Key : Curs On 
  321.    Repeat 
  322.       K$=Inkey$
  323.       S=Scancode
  324.       If S=65 and Len(SB$)>0
  325.          SB$=Left$(SB$,Len(SB$)-1)
  326.          Locate X Curs-1, : Print " "; : Locate X Curs-1, : 
  327.       End If 
  328.       If(K$>=Chr$(32)) and(K$<=Chr$(255)) and(K$<>Chr$(44)) and Len(SB$)<>7
  329.          Print K$;
  330.          SB$=SB$+K$
  331.       End If 
  332.    Until S=68
  333.    Curs Off 
  334.    DS_NEU
  335. End Proc
  336. Procedure LADEN
  337.    Close 1
  338.    DNR$="" : DNAME$="" : PNAME$="" : GTDAS$="" : GENRE$="" : BEM$="" : SB$=""
  339.    OP_DAT
  340.    CLB
  341. End Proc
  342. Procedure HILFE
  343.    VDS=DS
  344.    H$=Fsel$("*.Help","","Bitte DC.Help laden")
  345.    Wait Vbl 
  346.    If H$="" Then Pop Proc
  347.    Hide 
  348.    Load H$,11
  349.    Unpack 11 To 1 : Screen To Front 1
  350.    Do 
  351.       Screen 1
  352.       A$=Inkey$
  353.       S=Scancode
  354.       If S=76
  355.          If Y<>0
  356.             Y=Y-3
  357.          End If 
  358.       End If 
  359.       If S=77
  360.          If Y<>438
  361.             Y=Y+3
  362.          End If 
  363.       End If 
  364.       Screen Offset 1,0,Y
  365.       If S=69 Then Exit 
  366.    Loop 
  367.    Screen Close 1 : Erase 11
  368.    Show 
  369.    DS=VDS
  370.    DS_NEU
  371. End Proc
  372. Procedure STAT
  373.    If DSE>1
  374.       Change Mouse 3
  375.       Paper 6 : Pen 1 : Print At(2,11);String$(" ",76) : Print At(2,13);String$(" ",50)
  376.       Ink 0 : Bar 456,123 To 604,223
  377.       YG=0 : YT=0 : YD=0 : YA=0 : YS=0
  378.       For DS=1 To DSE
  379.          Get 1,DS
  380.          If Instr(Upper$(GTDAS$),"GAME") : Inc YG : End If 
  381.          If Instr(Upper$(GTDAS$),"TOOL") : Inc YT : End If 
  382.          If Instr(Upper$(GTDAS$),"DEMO") : Inc YD : End If 
  383.          If Instr(Upper$(GTDAS$),"ASCII") : Inc YA : End If 
  384.          If Instr(Upper$(GTDAS$),"SONST") : Inc YS : End If 
  385.       Next 
  386.       Paper 6 : Pen 1 : Print At(2,11);"Games:";YG;"/Tools:";YT;"/Demos:";YD;"/ASCII:";YA;"/Sonst:";YS
  387.       Print At(64,11);">> Taste <<"
  388.       Print At(2,13);"Gesamtanzahl der Programme:";YG+YT+YD+YA+YS
  389.       If YG<>0 and((100*YG)/(YG+YT+YD+YA+YS))>1
  390.          Ink 6 : Bar 458,224-((100*YG)/(YG+YT+YD+YA+YS)) To 473,223
  391.       End If 
  392.       If YT<>0 and((100*YT)/(YG+YT+YD+YA+YS))>1
  393.          Ink 5 : Bar 490,224-((100*YT)/(YG+YT+YD+YA+YS)) To 505,223
  394.       End If 
  395.       If YD<>0 and((100*YD)/(YG+YT+YD+YA+YS))>1
  396.          Ink 1 : Bar 522,224-((100*YD)/(YG+YT+YD+YA+YS)) To 537,223
  397.       End If 
  398.       If YA<>0 and((100*YA)/(YG+YT+YD+YA+YS))>1
  399.          Ink 7 : Bar 554,224-((100*YA)/(YG+YT+YD+YA+YS)) To 569,223
  400.       End If 
  401.       If YS<>0 and((100*YS)/(YG+YT+YD+YA+YS))>1
  402.          Ink 4 : Bar 586,224-((100*YS)/(YG+YT+YD+YA+YS)) To 601,223
  403.       End If 
  404.       Wait Key : Change Mouse 1
  405.       Paper 6 : Pen 1 : Print At(2,11);String$(" ",76) : Print At(2,13);String$(" ",50)
  406.       Paper 6 : Pen 1 : Print At(3,13);"Freier Speicher: ";Chip Free+Fast Free;" Bytes"
  407.       Dec DS
  408.    End If 
  409. End Proc
  410. Procedure DRUCK
  411.    On Error Proc FEHLER
  412.    If DSE>1
  413.       Paper 6 : Pen 1 : Print At(2,11);String$(" ",76) : Print At(2,13);String$(" ",50)
  414.       Print At(2,11);"Bitte den Namen der Diskette eingeben:"
  415.       Locate 42,11
  416.       Clear Key : Curs On 
  417.       Repeat 
  418.          K$=Inkey$
  419.          S=Scancode
  420.          If S=65 and Len(SUCH$)>0
  421.             SUCH$=Left$(SUCH$,Len(SUCH$)-1)
  422.             Locate X Curs-1, : Print " "; : Locate X Curs-1, : 
  423.          End If 
  424.          If(K$>=Chr$(32)) and(K$<=Chr$(255)) and(K$<>Chr$(44)) and Len(SUCH$)<>20
  425.             Print K$;
  426.             SUCH$=SUCH$+K$
  427.          End If 
  428.       Until S=68
  429.       Curs Off 
  430.       Open Port 2,"PRT:"
  431.       Print #2,SUCH$
  432.       Print #2,
  433.       SUCH$=Upper$(SUCH$)
  434.       For DS=1 To DSE
  435.          Get 1,DS
  436.          If Instr(Upper$(DNAME$),SUCH$)
  437.             Print #2,PNAME$
  438.          End If 
  439.       Next 
  440.       Print #2,
  441.       Close 2
  442.    End If 
  443. End Proc
  444. Procedure SRT
  445.    If DSE>1
  446.       Change Mouse 3
  447.       For W=1 To DSE-1 : FSRT=J
  448.          Get 1,DSE
  449.          For DS=DSE-1 To W Step -1
  450.             EDNR$=DNR$ : EDNAME$=DNAME$ : EPNAME$=PNAME$ : EGTDAS$=GTDAS$ : EGENRE$=GENRE$ : EBEM$=BEM$ : ESB$=SB$
  451.             Get 1,DS
  452.             ZDNR$=DNR$ : ZDNAME$=DNAME$ : ZPNAME$=PNAME$ : ZGTDAS$=GTDAS$ : ZGENRE$=GENRE$ : ZBEM$=BEM$ : ZSB$=SB$
  453.             TAUSCH=N
  454.             If Upper$(ZDNAME$)>Upper$(EDNAME$)
  455.                TAUSCH=J
  456.             End If 
  457.             If TAUSCH
  458.                DNR$=ZDNR$ : DNAME$=ZDNAME$ : PNAME$=ZPNAME$ : GTDAS$=ZGTDAS$ : GENRE$=ZGENRE$ : BEM$=ZBEM$ : SB$=ZSB$
  459.                Put 1,DS+1
  460.                DNR$=EDNR$ : DNAME$=EDNAME$ : PNAME$=EPNAME$ : GTDAS$=EGTDAS$ : GENRE$=EGENRE$ : BEM$=EBEM$ : SB$=ESB$
  461.                Put 1,DS
  462.                FSRT=N
  463.             End If 
  464.          Next 
  465.          If FSRT : Exit : End If 
  466.       Next 
  467.       DS=1 : Get 1,DS
  468.       Change Mouse 1
  469.    Else 
  470.       Paper 6 : Pen 1 : Print At(2,11);String$(" ",76) : Print At(2,13);String$(" ",50)
  471.    Print At(3,11);"Nichts zu sortieren !         >> Taste <<" : Wait Key : End If 
  472. End Proc
  473. Procedure SICHERN
  474.    Put 1,DS
  475.    DS_NEU
  476. End Proc
  477. Procedure _NEXT
  478.    If DS<DSE
  479.       Inc DS
  480.       Get 1,DS
  481.    End If 
  482. End Proc
  483. Procedure LAST
  484.    If DS<DSE
  485.       DS=DSE
  486.       Get 1,DS
  487.    End If 
  488. End Proc
  489. Procedure PREV
  490.    If DS>1
  491.       Dec DS
  492.       Get 1,DS
  493.    End If 
  494. End Proc
  495. Procedure FIRST
  496.    If DS>1
  497.       DS=1
  498.       Get 1,DS
  499.    End If 
  500. End Proc
  501. Procedure INFO
  502.    Repeat 
  503.       Paste Bob 12,29,29
  504.    Until Mouse Key
  505.    Ink 4 : Bar 10,28 To 324,83
  506.    GADG_NEU
  507.    DS_NEU
  508. End Proc
  509. Procedure CLB
  510.    Print At(21,17);String$(" ",5)
  511.    Print At(21,19);String$(" ",20)
  512.    Print At(21,21);String$(" ",30)
  513.    Print At(21,23);String$(" ",5)
  514.    Print At(21,25);String$(" ",25)
  515.    Print At(21,27);String$(" ",30)
  516.    Print At(21,29);String$(" ",7)
  517. End Proc
  518. Procedure _ENDE
  519.    Paper 6 : Pen 1 : Print At(2,11);String$(" ",76) : Print At(2,13);String$(" ",50)
  520.    Print At(3,11);"Sind Sie Sicher?     linke Maustaste = Ja     rechte Maustate = Nein"
  521.    Do 
  522.       MK=Mouse Key
  523.       If MK=1 Then Exit 
  524.       If MK=2 Then Pop Proc
  525.    Loop 
  526.    Close 1
  527.    Reserve Zone 
  528.    Screen Close 0
  529.    Erase 1
  530.    Edit 
  531. End Proc
  532. Procedure FEHLER
  533.    Paper 6 : Pen 1 : Print At(2,11);String$(" ",76) : Print At(2,13);String$(" ",50)
  534.    Paper 6 : Pen 1 : Print At(3,13);"Freier Speicher: ";Chip Free+Fast Free;" Bytes"
  535.    Resume Next 
  536. End Proc